Modern software and web-based services may comprise a codebase including hundreds of thousands or millions of lines of programming code. Certain portions of code may be associated with particular software features. For example, in a web service, a portion of code may be dedicated to changing a user setting, accessing a feature of a chat service, or modifying an uploaded photo. Maintaining a codebase is essential to operating a software product, as extraneous or unorganized code may prevent detection of problems with the software and hinder solutions to problems that arise. Thus, detecting and purging code that is no longer being used may be desirable. With a significant amount of code, it may be quite difficult to manually locate code that is no longer being accessed. Multiple features may share a particular code function, thus, removal of a feature from software may not necessarily indicate that the code is safe to be deleted. Further, it may be difficult to determine based upon a review of the code alone whether the software is actively accessing particular portions of code. Thus, improved techniques for identification and purging of unused code are needed.